using System;
using System.Collections.Generic;
using System.Text;

using System.Windows.Forms;


namespace Athena.Tools
{
    public interface ITool
    {
        ToolManager.Order Order { get; }
        bool HasContextMenuItems { get; set; }
        bool HasMenuItems { get; }
        bool RequiresNewToolWindow { get; set; }
        void SetupContextMenu(System.Windows.Forms.ToolStripMenuItem oStrip);
        void SetupToolStrip(System.Windows.Forms.ToolStrip oStrip);
        bool Handles(List<Type> oTypes);
        void OnMouseUp(HandledMouseEventArgs e);
        void OnMouseDown(HandledMouseEventArgs e);
        void OnKeyDown(KeyEventArgs args);
        void OnKeyUp(KeyEventArgs args);
    }
}
